@@ -13,8 +13,8 @@ android {
               | 
            ||
| 13 | 13 | 
                applicationId "ai.pai.client"  | 
            
| 14 | 14 | 
                minSdkVersion MIN_SDK_VERSION as int  | 
            
| 15 | 15 | 
                targetSdkVersion TARGET_SDK_VERSION as int  | 
            
| 16 | 
                - versionCode 1029  | 
            |
| 17 | 
                - versionName "1.0.29"  | 
            |
| 16 | 
                + versionCode 1030  | 
            |
| 17 | 
                + versionName "1.0.30"  | 
            |
| 18 | 18 | 
                buildConfigField "boolean","isDevMode","true"  | 
            
| 19 | 19 | 
                manifestPlaceholders = [CHANNEL_NAME: "guanwang"]  | 
            
| 20 | 20 | 
                 | 
            
                @@ -1,6 +1,7 @@  | 
            ||
| 1 | 1 | 
                package ai.pai.client.activity;  | 
            
| 2 | 2 | 
                 | 
            
| 3 | 3 | 
                import android.os.Bundle;  | 
            
| 4 | 
                +import android.os.Handler;  | 
            |
| 4 | 5 | 
                import android.text.Editable;  | 
            
| 5 | 6 | 
                import android.text.TextUtils;  | 
            
| 6 | 7 | 
                import android.text.TextWatcher;  | 
            
                @@ -25,11 +26,12 @@ public class FeedbackActivity extends BaseActivity implements View.OnClickListen  | 
            ||
| 25 | 26 | 
                 | 
            
| 26 | 27 | 
                private Button sendBtn;  | 
            
| 27 | 28 | 
                private EditText feedbackET;  | 
            
| 28 | 
                -  | 
            |
| 29 | 
                + private Handler mHandler;  | 
            |
| 29 | 30 | 
                @Override  | 
            
| 30 | 31 | 
                     protected void onCreate(Bundle savedInstanceState) {
               | 
            
| 31 | 32 | 
                super.onCreate(savedInstanceState);  | 
            
| 32 | 33 | 
                setContentView(R.layout.activity_feedback);  | 
            
| 34 | 
                + mHandler = new Handler();  | 
            |
| 33 | 35 | 
                SystemUtils.setImmerseLayout(this,findViewById(R.id.title_layout));  | 
            
| 34 | 36 | 
                TextView title = (TextView)findViewById(R.id.title_bar_middle_txt);  | 
            
| 35 | 37 | 
                title.setText(R.string.slide_feedback);  | 
            
                @@ -57,6 +59,15 @@ public class FeedbackActivity extends BaseActivity implements View.OnClickListen  | 
            ||
| 57 | 59 | 
                }  | 
            
| 58 | 60 | 
                 | 
            
| 59 | 61 | 
                @Override  | 
            
| 62 | 
                +    protected void onDestroy() {
               | 
            |
| 63 | 
                + super.onDestroy();  | 
            |
| 64 | 
                +        if(mHandler!=null){
               | 
            |
| 65 | 
                + mHandler.removeCallbacksAndMessages(null);  | 
            |
| 66 | 
                + mHandler = null;  | 
            |
| 67 | 
                + }  | 
            |
| 68 | 
                + }  | 
            |
| 69 | 
                +  | 
            |
| 70 | 
                + @Override  | 
            |
| 60 | 71 | 
                     public void onClick(View v) {
               | 
            
| 61 | 72 | 
                         switch (v.getId()){
               | 
            
| 62 | 73 | 
                case R.id.title_bar_back_layout:  | 
            
                @@ -91,6 +102,12 @@ public class FeedbackActivity extends BaseActivity implements View.OnClickListen  | 
            ||
| 91 | 102 | 
                         params.put("feedback",feedback);
               | 
            
| 92 | 103 | 
                new HttpPostTask(this,params).executeOnExecutor(ThreadExecutor.getInstance().getExecutor(), UrlContainer.FEEDBACK_URL);  | 
            
| 93 | 104 | 
                ToastUtils.showShortToast(this,R.string.thank_feedback);  | 
            
| 94 | 
                - finish();  | 
            |
| 105 | 
                +        mHandler.postDelayed(new Runnable() {
               | 
            |
| 106 | 
                + @Override  | 
            |
| 107 | 
                +            public void run() {
               | 
            |
| 108 | 
                + finish();  | 
            |
| 109 | 
                + }  | 
            |
| 110 | 
                + },1000);  | 
            |
| 111 | 
                +  | 
            |
| 95 | 112 | 
                }  | 
            
| 96 | 113 | 
                }  | 
            
                @@ -244,7 +244,7 @@ public class GroupSettingActivity extends BaseActivity implements View.OnClickLi  | 
            ||
| 244 | 244 | 
                groupLockToggleBtn.setChecked(true);  | 
            
| 245 | 245 | 
                groupLockTextView.setText(isLocked ? R.string.group_is_locked : R.string.group_is_unlocked);  | 
            
| 246 | 246 | 
                groupLockHintTextView.setText(isLocked ? R.string.group_locked_hint : R.string.group_unlocked_hint);  | 
            
| 247 | 
                - Toast.makeText(getApplicationContext(), R.string.group_is_locked, Toast.LENGTH_SHORT).show();  | 
            |
| 247 | 
                + ToastUtils.showShortToast(getApplicationContext(), R.string.group_is_locked);  | 
            |
| 248 | 248 | 
                break;  | 
            
| 249 | 249 | 
                case GroupService.GroupCommand.COMMAND_UNLOCK_GROUP:  | 
            
| 250 | 250 | 
                isLocked = false;  | 
            
                @@ -254,7 +254,7 @@ public class GroupSettingActivity extends BaseActivity implements View.OnClickLi  | 
            ||
| 254 | 254 | 
                ToastUtils.showShortToast(getApplicationContext(), R.string.group_is_unlocked);  | 
            
| 255 | 255 | 
                break;  | 
            
| 256 | 256 | 
                case GroupService.GroupCommand.COMMAND_QUIT_GROUP:  | 
            
| 257 | 
                - Toast.makeText(getApplicationContext(), R.string.quit_group_success, Toast.LENGTH_SHORT).show();  | 
            |
| 257 | 
                + ToastUtils.showShortToast(getApplicationContext(), R.string.quit_group_success);  | 
            |
| 258 | 258 | 
                DBService.getInstance(getApplicationContext()).deleteGroupRelated(groupId);  | 
            
| 259 | 259 | 
                setResult(RESULT_OK);  | 
            
| 260 | 260 | 
                finish();  | 
            
                @@ -205,7 +205,7 @@ public class GroupService extends Service implements UploadTask.OnPhotoUploadLis  | 
            ||
| 205 | 205 | 
                }  | 
            
| 206 | 206 | 
                return true;  | 
            
| 207 | 207 | 
                                     }else if(status==402002){
               | 
            
| 208 | 
                - msg = getString(R.string.group_is_locked);  | 
            |
| 208 | 
                + msg = getString(R.string.cannot_enter_locked_group);  | 
            |
| 209 | 209 | 
                return false;  | 
            
| 210 | 210 | 
                }  | 
            
| 211 | 211 | 
                                 }catch (Exception e){
               | 
            
                @@ -277,7 +277,7 @@ public class GroupService extends Service implements UploadTask.OnPhotoUploadLis  | 
            ||
| 277 | 277 | 
                                         groupInfo.groupFrom = group.getInt("group_from");
               | 
            
| 278 | 278 | 
                return true;  | 
            
| 279 | 279 | 
                                     }else if(status==402002){
               | 
            
| 280 | 
                - msg = getString(R.string.group_is_locked);  | 
            |
| 280 | 
                + msg = getString(R.string.cannot_enter_locked_group);  | 
            |
| 281 | 281 | 
                return false;  | 
            
| 282 | 282 | 
                }  | 
            
| 283 | 283 | 
                                 }catch (Exception e){
               | 
            
                @@ -34,7 +34,8 @@ public class ToastUtils {
               | 
            ||
| 34 | 34 | 
                mToast.setGravity(Gravity.BOTTOM, 0, 150);  | 
            
| 35 | 35 | 
                mToast.setView(view);  | 
            
| 36 | 36 | 
                }  | 
            
| 37 | 
                - mHandler.postDelayed(r, 1000);//延迟1秒隐藏toast  | 
            |
| 37 | 
                + mHandler.postDelayed(r, 1200);//延迟1秒隐藏toast  | 
            |
| 38 | 
                + mToast.setView(view);  | 
            |
| 38 | 39 | 
                mToast.show();  | 
            
| 39 | 40 | 
                }  | 
            
| 40 | 41 | 
                 | 
            
                @@ -50,7 +51,8 @@ public class ToastUtils {
               | 
            ||
| 50 | 51 | 
                mToast.setGravity(Gravity.BOTTOM, 0, 150);  | 
            
| 51 | 52 | 
                mToast.setView(view);  | 
            
| 52 | 53 | 
                }  | 
            
| 53 | 
                - mHandler.postDelayed(r, 1000);//延迟1秒隐藏toast  | 
            |
| 54 | 
                + mHandler.postDelayed(r, 1200);//延迟1秒隐藏toast  | 
            |
| 55 | 
                + mToast.setView(view);  | 
            |
| 54 | 56 | 
                mToast.show();  | 
            
| 55 | 57 | 
                }  | 
            
| 56 | 58 | 
                }  | 
            
                @@ -53,6 +53,8 @@  | 
            ||
| 53 | 53 | 
                 | 
            
| 54 | 54 | 
                <string name="group_is_locked">群已锁定</string>  | 
            
| 55 | 55 | 
                 | 
            
| 56 | 
                + <string name="cannot_enter_locked_group">群已被锁定,无法加入</string>  | 
            |
| 57 | 
                +  | 
            |
| 56 | 58 | 
                <string name="group_lock_fail">群加锁失败</string>  | 
            
| 57 | 59 | 
                 | 
            
| 58 | 60 | 
                <string name="group_locked_hint">加锁群不再允许新成员加入</string>  |